home *** CD-ROM | disk | FTP | other *** search
- The XDME Excelsior Suite
-
- v1.20 by Fergus Duniho
-
- Copyright © 1994 Fergus Duniho
-
- DESCRIPTION
-
- XES is the new name for XDMD, which stood for "XDME Macros by
- Duniho." I changed the name, because I want to encourage other people to
- contribute to it. XES is the successor to DMD, which was released for the
- last time a couple years ago. I recently released XDME v1.00, and I sent
- Aaron Digulla, the main author of XDME, a copy of XDMD v1.10. XES picks up
- the version numbering from XDME.
-
- XES is an integrated suite of macros, menus, keymappings, programs,
- and ARexx scripts for XDME. Most of XES's more commonly used features can
- be accessed from the menus. Here is a list of some of XES's features.
- Read the HISTORY for more of its features.
-
- I. Outlining
-
- II. Localized major modes
-
- A. Text mode
-
- B. Two C modes, ANSI and K&R, complete with automatic line
- indentation.
-
- C. A general programming mode for other languages.
-
- D. An outline mode for writing outlines, like this one.
-
- E. A proofs mode for writing logical proofs. (I'm a philosophy
- major.)
-
- III. Automatic major mode selection upon loading.
-
- IV. The maintenance of a "Windows" menu that keeps track of all of
- XDME's windows.
-
- V. Different styles of editing integrated with each other.
-
- A. Cutting and copying for all block types.
-
- B. Regions and rectangles, ala Emacs.
-
- VI. XPK support, including automatic packing or encryption upon
- saving, and decryption with a password requester.
-
- VII. The maintenance of a personal diary, complete with password
- encryption and decryption.
-
- VIII. Spellchecking via the AlphaSpell program and its accompanying
- dictionary.
-
- IX. Automatic pagination via the Paginate program.
-
- X. Various find and replace routines, including a Find requester
- and a Replace requester. The Replace requester lets you
- replace the word at the cursor, every occurance of the find
- string in the text, or every occurance in a block.
-
- XI. Various Emacs like keymappings.
-
- XII. Sundry other features.
-
- INSTALLATION
-
- To install XES, click on the install icon. This will copy files to
- your S:, REXX:, and C: drawers. If you don't want something overwritten,
- such as your current .edrc file, back it up first.
-
- Copy the dictionary to your harddrive, to a high density disk, or
- to a double sided diskspare disk. It is too large for a normal Amiga
- double sided disk. Change the value of $Dict in ".edrc" and the values of
- path and name in "Diary.xdme" to suit your own needs.
-
- To make full use of all its features, you will need some programs
- and libraries that I haven't included with XDMD. These include "xpack,"
- "RexxArpLibrary.library," "arp.library," "rexxreqtools.library,"
- "xpkmaster.library," various xpk compressor libraries, "rexxmast," and
- "move."
-
- HISTORY
-
- I. 29 October 1994 - XDMD v1.00 released.
-
- II. 1 November 1994 - XDMD v1.10
-
- A. By taking a short detour through ARexx, I implemented
- arrays in XDME. The macros "set-array," "get-array,"
- "free-array," "unset-array," and "unset-member" all work
- with arrays. The ARexx script LoadArray loads a file into
- an array.
-
- B. I used the array capability to redo how spell-checking
- works in XDME. Instead of using a requester, it uses
- LoadArray to put the list of unfound words into an array.
- It then redefines some keys on the numeric keypad.
-
- 1. nk1 goes to the last word in the array.
-
- 2. nk7 goes to the first word in the array.
-
- 3. nk+ moves forward through the array.
-
- 4. nk- moves backwards through the array.
-
- 5. nk2, nk4, nk6, and nk8 work as cursor keys.
-
- 6. nk3 and nk9 search forwards and backwards for the find
- string, which gets set to the current word in the array
- whenever you move through the array.
-
- 7. nk( puts the numeric keypad back in number mode.
-
- C. Yesterday, before I figured out how to implement arrays, I
- did some new spell-checking routines with twin variable
- stacks. I left the code in .edrc for anyone interested in
- looking at it.
-
- 1. I added the "empty-stack" macro, because "purgevar"
- doesn't work.
-
- D. I fixed some bugs in s-bs and s-del. I added a-d, which
- works like M-d in Emacs.
-
- 1. I added the "delstr" macro.
-
- E. I reset toggle 0 and set toggle 1, so that I can use
- variables as flags with "if," "ifelse," and "while."
-
- F. I added some numeric keypad modes.
-
- 1. "keypad-numbers" - your ordinary numeric keypad
-
- 2. "keypad-move" - the cursor movements written on the
- front. nk5 recenters the screen.
-
- 3. "keypad-spell" - the mode for spell checking, which I
- described earlier.
-
- III. 9 November 1994 - XES v1.20
-
- A. Overhauled the menus.
-
- 1. Checkmarks indicate whether different settings are set.
- These get updated for whichever window you are in if
- you change windows with the menu.
-
- 2. Amiga key symbols have replaced "A-"s.
-
- 3. The menus have been rearranged somewhat.
-
- B. New macros:
-
- 1. "Intcmp" macro compares two numbers. With its help,
- nk+ and nk- never take you out of bounds when
- spell-checking.
-
- 2. "Prev2" macro serches backwards for the closest of
- two different strings.
-
- 3. "Prevf" macro searches backwards for a string, and it
- sets a flag if the search fails.
-
- 4. "Pos" takes a column and line number as arguments and
- goes there.
-
- 5. "Pos-line" indents the current line n columns from
- the left.
-
- 6. "Text-format" formats a paragraph according to values
- stored in $indcol and $parcol. $Indcol indicates how
- much the first line of a paragraph should be indented.
- The outlining macros set these values and use
- text-format.
-
- i. "Setindcol" sets the value of $indcol.
-
- C. New major modes:
-
- 1. Fundamental - What used to be called "Programming."
-
- 2. Programming - The tab key indents code in a general way
- that is helpful for programming in any language. Use a
- more specific mode if one is available for the language
- you are programming in.
-
- 3. ARexx - The tab key properly indents ARexx code so long
- as the strings "do" and "select" are not parts of
- longer strings in the code.
-
- 4. Manual - For writing manuals.
-
- D. Miscellaneous changes here and there.
-
- COPYRIGHT
-
- The dictionary is public domain. Everything else in the archive is
- copyright © 1994 by Fergus Duniho. XES is freeware.
-
- DISTRIBUTABILITY
-
- You may freely distribute this archive so long as you leave it
- unchanged and make no profit from its distribution. Sale of XDMD is
- strictly prohibited.
-
- DISCLAIMER
-
- There is no guarantee that XDMD will do anything you want it to. I
- am not responsible for any damage that might result from using XDMD. You
- use it entirely at your own risk.
-
- ABOUT THE AUTHOR
-
- I am Fergus Duniho. I am also the author of the DDLI, a
- computerized personality indicator. Get ddli341.lha from the aminet and
- try it out.
-